1. Field of the Invention
The present invention relates to computer systems and methods that use hierarchical data structures comprising objects that are searched, such as file systems.
2. Description of the Prior Art
By way of background, many hierarchical data structures, such as file systems on any computer, are becoming increasingly larger and more complex. In the case of files systems, this is due to the increasing number of files and directory levels that are represented by objects arranged in searchable tree hierarchies. Data structure complexity increases when there are many directory levels that create deep hierarchies and lengthy path names. Traversing and accessing individual objects in large file system and other hierarchical data structures can be very resource-expensive, requiring an inordinate amount of time, and creating scalability issues.
As hierarchical data structures grow in size, processing time tends to increase in a nonlinear fashion due to increasing contention for the objects being processed. This can add significantly to overall performance response times. It also becomes an increasingly unmanageable access method due to the sheer size of the data structures and the number of elements in each node. In addition, heavily used data structures, such as file system tree hierarchies, are a source of contention when multiple users and applications traverse and modify the directory structures concurrently. This can cause significant processing delays, even when the directory structure elements are already in memory.
It is to improvements in the area of hierarchical data structure access that the present invention is directed. In particular, a new technique is proposed that greatly improves the ability to perform endpoint resolution, especially as data structure complexity increases.